layui.use([ 'table', 'layer', 'form' ], function() {
	var $ = layui.jquery;
	var table = layui.table;
	var layer = layui.layer;
	var form = layui.form;
	var layerAdd;
	var layerEdit;
	var userid;
	var formdata;
	table.render({
		id : 'idTable',
		elem : '#test',
		url : '/workflow/userManager/userlistpagelist', // 数据接口
		method : "post",
		page : true,
		height : 450,
		cols : [ [ // 表头
		{
			field : 'userid',
			title : 'ID',
			type:'numbers',
			fixed : 'left'
		}, {
			field : 'name',
			title : '账号名称'
		}, {
			field : 'createdate',
			title : '创建日期'
		},{
			fixed : 'right',
			width : 165,
			align : 'center',
			toolbar : '#barDemo'
		} ] ]
	});
	function ontableRender() {
		var Snames=$("#name").val();
		table.reload('idTable', {
			url : '/workflow/userManager/userlistpagelist',
			where : {
				userName : Snames
			}
		});
	}

	function openlayer(butName) {
		var value = layer.open({
			resize : false,
			type : 1,
			offset : '90px',
			title : butName, // 不显示标题栏
			closeBtn : 1,
			fixed : false,
			area : '600px',
			shade : 0.5,
			// id : 'layer'+butName, // 设定一个id，防止重复弹出
			btnAlign : 'r',
			content : $("#formI"),
			success : function(layero, index) {
				$("#formI").removeClass("layui-hide");
				$("#butSubmit").attr("lay-filter", butName);
			},
			end : function(index, layero) {
				
				$("#formI").addClass("layui-hide");
				// 重置表单
				$("#formI")[0].reset();
				console.log("重置2");
				//刷新表单视图
				form.render();
			}

		});
		return value;
	}
	// 验证
	form.verify({
		username : function(value, item) { // value：表单的值、item：表单的DOM对象
			if (!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)) {
				return '用户名不能有特殊字符';
			}
			if (/(^\_)|(\__)|(\_+$)/.test(value)) {
				return '用户名首尾不能出现下划线\'_\'';
			}
			if (/^\d+\d+\d$/.test(value)) {
				return '用户名不能全为数字';
			}
			if (!/^[\S]{3,6}$/.test(value)) {
				return '只能为3-6位字符';
			}
		}

		// 我们既支持上述函数式的方式，也支持下述数组的形式
		// 数组的两个值分别代表：[正则匹配、匹配不符时的提示文字]
		,
		pass : [ /^[\S]{7,12}$/, '密码必须7到12位，且不能出现空格' ]
	});

	// 添加
	form.on('submit(add)', function(data) {
		formdata = data.field;
		formdata.type=1;
		console.log(formdata);
		$.ajax({
			url : "/workflow/userManager/insertUser",
			type : "post",
			data : formdata,
			success : function(data) {
				if(data.success){
					layer.msg("添加成功！");
					// 渲染表格
					ontableRender();
				}else{
					layer.msg(data.message);
				}
			}
		});
		// 重置表单
		$("#formI")[0].reset();
		// 关闭模态框
		layer.close(layerAdd);
		return false;
	});
	// 编辑
	form.on('submit(edit)', function(data) {
		formdata = data.field;
		formdata.name=userid;
		console.log(formdata);
		$.ajax({
			url : "/workflow/userManager/modificationpas",
			type : "post",
			data : {userName:formdata.name,newpassword:formdata.password},
			success : function(data) {
				layer.msg("修改成功！");
				// 重置表单
				$("#formI")[0].reset();
				
			}
		});
		// 关闭模态框
		layer.close(layerEdit);
		// 渲染表格
		ontableRender();
		return false; // 阻止表单跳转
	})
	// 监听工具条
	table.on('tool(demo)', function(obj) { // 注：tool是工具条事件名，test是table原始容器的属性
		var data = obj.data; // 获得当前行数据
		var layEvent = obj.event; // 获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）
		// var tr = obj.tr; // 获得当前行 tr 的DOM对象
		if (layEvent === 'edit') {
			userid=data.name;
			console.log(data);
			$("#username").hide();
			$("input[name='name']").removeAttr("lay-verify");
			layerEdit = openlayer("edit");
			
		}
		if (layEvent === 'del') {
			layer.confirm('确定要删除吗?', {
				icon : 3,
				title : '删除'
			}, function(index) {
				// 删除请求
				$.ajax({
					url : "/workflow/userManager/userdelete",
					type : "get",
					data : {
						'userid' : data.userid
					},
					success : function(data) {
						if(data.success){
							layer.msg("删除成功！");
							ontableRender();
						}else{
							layer.msg(data.message);
						}
					}
				});
				layer.close(index);
			});
		}

	});
	$('#addbut').on('click', function() {
		$("#username").show();
		$("input[name='name']").attr("lay-verify","required|username");
		layerAdd = openlayer("add");
	});
	// 搜索
	$("#searchB").on('click', function() {
		ontableRender();
	});
	$(window).keypress(function(event) {
//		// document.write("你输入的字符是：" + String.fromCharCode(event.which));
//		if (event.which == 13) {
//			console.log("按下了回车键！");
//			var isFocus = $("#searchI").is(":focus");
//			if (isFocus) {
//				Snames = $("#searchI").val();
//				console.log("sn" + Snames);
//				ontableRender();
//			}
//		}
	});
});
